#!/usr/bin/env bash
#-------------------------------------------------------
#	FileName	: sed替换操作.sh
#	Author		：hpy
#	Date		：2021年01月01日
#	Description	：
#-------------------------------------------------------
 
#最前面添加字符 hello
sed 's/^/hello/' a
echo ""


#在最前面家加上行号
echo "----------------------"
idx=1
for i in $(cat a)
do 
    echo $i | sed 's/^/'$idx'/'
    ((idx++))
done 

#读取文件第n行的内容
echo "-----------------------"
cat a | sed -n "3p" 
echo ""

#读取文件第n行到第m行的内容
echo "-----------------------"
cat a | sed -n "2,4p"   #2-4行
echo ""

#在文件第2行后添加一行
echo "-----------------------"
cat a | sed -e '2a\yhp' 
echo ""

#删除地1到2行
echo "-----------------------"
cat a | sed '1,2d' 
echo ""

#在第2行后添加yhp
echo "-----------------------"
cat a | sed '2a yhp' 
echo ""
#在第2行前添加mdx
echo "-----------------------"
cat a | sed '2i mdx' 
echo ""


#替换第2行到第4行为 hello baby
echo "-----------------------"
cat a | sed '2,5c hello baby' 
echo ""

#搜索带有 3关键字的行
echo "-----------------------"
cat a | sed -n '/3/p' 
echo ""

#搜索带有 3关键字的行并删除该行
echo "-----------------------"
cat a | sed '/3/d' 
echo ""

#搜索带有 3关键字的行并干点其他事
echo "-----------------------"
cat a | sed -n '/3/{s/3/yhp/;p;q}' 
echo ""

#搜索带有 yhp关键字的行并干点其他事
echo "-----------------------"
cat a | sed -n '/yhp/{s/l/love/;p;q}' 
echo ""